package org.lanqiao.tjut.dynamc_test;

import org.lanqiao.tjut.dynamc_service.ISpokesman;
import org.lanqiao.tjut.dynamc_service.impl.EducationSpokesman;
import org.lanqiao.tjut.dynamc_service.impl.TransportSpokesman;
import org.lanqiao.tjut.dynamc_service.proxy.SpokesmanProxyHandler;

public class TestDriver {

	//代理模式--动态--相比静态代理只需要一个代理类（静态代理则一个被代理类对应一个代理类）
	public static void main(String[] args) {

		// 创建动态代理对象
		SpokesmanProxyHandler sProxyHandler = new SpokesmanProxyHandler();

		// 举行教育部新闻发布会
		ISpokesman eSpeakerProxy = (ISpokesman) sProxyHandler.newProxyInstance(new EducationSpokesman());
		// 代理类开始进行教育部的新闻发布会
		eSpeakerProxy.doSpeaking();

		System.out.println("---------------------------------------");

		// 举行交通部部新闻发布会
		ISpokesman tSpeakerProxy = (ISpokesman)sProxyHandler.newProxyInstance(new TransportSpokesman());
		// 代理类开始进行交通部新闻发布会
		tSpeakerProxy.doSpeaking();
	}

}
